﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq;
using Negocios;

namespace INFTUR
{
    public partial class VendaPasagem : System.Web.UI.Page
    {
        public static bool inserir = false;

        protected void Page_Load(object sender, EventArgs e)
        {
            limpar();
        }

        public void limpar()
        {
            tbCodigo.Text = "";
            tbPreco.Text = "";
            tbDataIda.Text = Convert.ToString(DateTime.Today);
            tbDataVolta.Text = Convert.ToString(DateTime.Today);
            ddClasse.Text = "1";
            ddCompanhia.Text = "1";
            //ddCliente.Text = "";
            lErro.Text = "";

            tbCodigo.Enabled = false;
            tbPreco.Enabled = false;
            tbDataIda.Enabled = false;
            tbDataVolta.Enabled = false;
            ddClasse.Enabled = false;
            ddCliente.Enabled = false;
            ddCompanhia.Enabled = false;

            bCancelar.Enabled = false;
            bGravar.Enabled = false;

            GridView1.DataBind();
        }

        protected void BVenda_Click(object sender, EventArgs e)
        {
            tbCodigo.Enabled = false;
            tbPreco.Enabled = true;
            tbDataIda.Enabled = true;
            tbDataVolta.Enabled = true;
            ddClasse.Enabled = true;
            ddCliente.Enabled = true;
            ddCompanhia.Enabled = true;

            bGravar.Enabled = true;
            bCancelar.Enabled = true;

            inserir = true;

        }

        protected void bCancelar_Click(object sender, EventArgs e)
        {
            limpar();
        }

        protected void bGravar_Click(object sender, EventArgs e)
        {
            try
            {
                Session["usuario"] = "brasil";
                VendaPassagemBO vpBO = new VendaPassagemBO();

                vpBO.Classe = Convert.ToInt32(ddClasse.SelectedValue);
                vpBO.Companhia = ddCompanhia.SelectedValue;


                UsuarioBO usBO = new UsuarioBO();
                usBO.Login = Session["usuario"].ToString();
                vpBO.Usuario = usBO;

                vpBO.DataIda = Convert.ToDateTime(tbDataIda.Text);
                vpBO.DataVolta = Convert.ToDateTime(tbDataVolta.Text);


                vpBO.Preco = Convert.ToSingle(tbPreco.Text);

                ClienteBO cBo = new ClienteBO();
                cBo.Cpf = Convert.ToString(ddCliente.SelectedValue);
                vpBO.CBO = cBo;

                VendaPassagemBOMetodos vpBOMetodos = new VendaPassagemBOMetodos();
                if (inserir == true)
                {
                    vpBOMetodos.Insere(vpBO);
                }
                else
                {
                    vpBO.Id = Convert.ToInt32(tbCodigo.Text);
                    vpBOMetodos.Atualiza(vpBO);
                }
                limpar();
            }
            catch (Exception ex)
            {
                lErro.Text = ex.Message;
            }
            inserir = false;
        }

        protected void lbRemove_Click(object sender, EventArgs e)
        {
            LinkButton lb = (LinkButton)sender;
            DataControlFieldCell celula = (DataControlFieldCell)(lb).Parent;
            GridViewRow linha = (GridViewRow)celula.Parent;

            int id = Convert.ToInt32(linha.Cells[0].Text);

            VendaPassagemBO vpBO = new VendaPassagemBO();
            VendaPassagemBOMetodos vpBOM = new VendaPassagemBOMetodos();

            vpBO = vpBOM.Consulta(id);

            vpBOM.Remove(id);
            GridView1.DataBind();

        }

        protected void lbAtualiza_Click(object sender, EventArgs e)
        {
            inserir = false;
            LinkButton lb = (LinkButton)sender;
            DataControlFieldCell celula = (DataControlFieldCell)(lb).Parent;
            GridViewRow linha = (GridViewRow)celula.Parent;
            
            int id = Convert.ToInt32(linha.Cells[0].Text);

            VendaPassagemBO vpBO = new VendaPassagemBO();
            VendaPassagemBOMetodos vpBOM = new VendaPassagemBOMetodos();

            vpBO = vpBOM.Consulta(id);

            tbCodigo.Text = Convert.ToString(vpBO.Id);
            tbPreco.Text = Convert.ToString(vpBO.Preco);
            tbDataIda.Text = Convert.ToString(vpBO.DataIda);
            tbDataVolta.Text = Convert.ToString(vpBO.DataVolta);
            ddClasse.Text = Convert.ToString(vpBO.Classe);
            ddCompanhia.Text = vpBO.Companhia;
            ddCliente.Text = vpBO.CBO.Cpf;

            tbCodigo.Enabled = true;
            tbPreco.Enabled = true;
            tbDataIda.Enabled = true;
            tbDataVolta.Enabled = true;
            ddClasse.Enabled = true;
            ddCliente.Enabled = true;
            ddCompanhia.Enabled = true;

            bGravar.Enabled = true;
            bCancelar.Enabled = true;
        }

       
    }
}
